This course is about managing geo-information in a database management system (DBMS).
After the course the student is able to:
- design an conceptual information model by converting a descriptive text of a real world situation into a Unified Modelling Language (UML) class diagram.
- create a relational database management system (DBMS) schema to store the information for a real world situation (as captured in a UML class diagram), including definition of (primary/foreign) keys, clustering and indexing for performance.
- apply the Structured Query Language (SQL) to query and update a relational DBMS by using a range of techniques: join two or more tables, aggregate data, specify meaningful selection predicates, ordering the output, use subqueries and program additional functionality with a procedural language (PL/pgSQL in PostgreSQL).
- understand the different characteristics of spatial data and be able to also design a conceptual model for a spatial DBMS, create the spatial conceptual information model in a RDBMS with spatial extensions, optimize the implementation of spatial databases (spatial clustering indexing, spatial constraints,...) and retrieve and update spatial data using spatial operations (both geometric and topological) in the selection in combination with non-spatial predicates.
- apply a range of advanced topics: spatial-temporal modelling, 3D modelling, routing inside the DBMS (using pgRouting) vario- or multiscale modelling, Spatial OCL (Object Constraint Language) formalization, simplicial homology, nD point clouds, efficient raster data management, 5D modelling, and selected NoSSQL database (Neo4j, MongoDB).